static void gdk_wayland_window_configure (GdkWindow *window,
int width,
- int height,
- int edges);
+ int height);
G_DEFINE_TYPE (GdkWindowImplWayland, _gdk_window_impl_wayland, GDK_TYPE_WINDOW_IMPL)
static void
gdk_wayland_window_update_size (GdkWindow *window,
int32_t width,
- int32_t height,
- uint32_t edges)
+ int32_t height)
{
GdkWindowImplWayland *impl = GDK_WINDOW_IMPL_WAYLAND (window->impl);
GdkRectangle area;
window->width = width;
window->height = height;
- impl->resize_edges = edges;
area.x = 0;
area.y = 0;
impl->scale = scale;
/* Notify app that scale changed */
- gdk_wayland_window_configure (window, window->width, window->height, impl->resize_edges);
+ gdk_wayland_window_configure (window, window->width, window->height);
}
}
static void
gdk_wayland_window_configure (GdkWindow *window,
int width,
- int height,
- int edges)
+ int height)
{
GdkDisplay *display;
GdkEvent *event;
event->configure.width = width;
event->configure.height = height;
- gdk_wayland_window_update_size (window, width, height, edges);
+ gdk_wayland_window_update_size (window, width, height);
_gdk_window_update_size (window);
g_object_ref(window);
static void
xdg_surface_configure (void *data,
struct xdg_surface *xdg_surface,
- uint32_t edges,
int32_t width,
int32_t height)
{
&width,
&height);
- gdk_wayland_window_configure (window, width, height, edges);
+ gdk_wayland_window_configure (window, width, height);
}
static void
* just move the window - don't update its size
*/
if (width > 0 && height > 0)
- gdk_wayland_window_configure (window, width, height, 0);
+ gdk_wayland_window_configure (window, width, height);
}
static void
GdkWaylandDisplay *wayland_display =
GDK_WAYLAND_DISPLAY (gdk_window_get_display (window));
- uint32_t grab_type;
+ uint32_t resize_edges;
if (GDK_WINDOW_DESTROYED (window) ||
!WINDOW_IS_TOPLEVEL_OR_FOREIGN (window))
switch (edge)
{
case GDK_WINDOW_EDGE_NORTH_WEST:
- grab_type = XDG_SURFACE_RESIZE_EDGE_TOP_LEFT;
+ resize_edges = XDG_SURFACE_RESIZE_EDGE_TOP_LEFT;
break;
case GDK_WINDOW_EDGE_NORTH:
- grab_type = XDG_SURFACE_RESIZE_EDGE_TOP;
+ resize_edges = XDG_SURFACE_RESIZE_EDGE_TOP;
break;
case GDK_WINDOW_EDGE_NORTH_EAST:
- grab_type = XDG_SURFACE_RESIZE_EDGE_RIGHT;
+ resize_edges = XDG_SURFACE_RESIZE_EDGE_RIGHT;
break;
case GDK_WINDOW_EDGE_WEST:
- grab_type = XDG_SURFACE_RESIZE_EDGE_LEFT;
+ resize_edges = XDG_SURFACE_RESIZE_EDGE_LEFT;
break;
case GDK_WINDOW_EDGE_EAST:
- grab_type = XDG_SURFACE_RESIZE_EDGE_RIGHT;
+ resize_edges = XDG_SURFACE_RESIZE_EDGE_RIGHT;
break;
case GDK_WINDOW_EDGE_SOUTH_WEST:
- grab_type = XDG_SURFACE_RESIZE_EDGE_BOTTOM_LEFT;
+ resize_edges = XDG_SURFACE_RESIZE_EDGE_BOTTOM_LEFT;
break;
case GDK_WINDOW_EDGE_SOUTH:
- grab_type = XDG_SURFACE_RESIZE_EDGE_BOTTOM;
+ resize_edges = XDG_SURFACE_RESIZE_EDGE_BOTTOM;
break;
case GDK_WINDOW_EDGE_SOUTH_EAST:
- grab_type = XDG_SURFACE_RESIZE_EDGE_BOTTOM_RIGHT;
+ resize_edges = XDG_SURFACE_RESIZE_EDGE_BOTTOM_RIGHT;
break;
default:
if (!impl->xdg_surface)
return;
+ impl->resize_edges = resize_edges;
xdg_surface_resize (impl->xdg_surface,
gdk_wayland_device_get_wl_seat (device),
_gdk_wayland_display_get_serial (wayland_display),
- grab_type);
+ resize_edges);
/* This is needed since Wayland will absorb all the pointer events after the
* above function - FIXME: Is this always safe..?